1. Field of the Invention
The present invention relates to a method and apparatus for adjusting carrier phase for coded two-dimensional signals received by a modem.
2. Description of Prior Art
It is known in the prior art that precoding the data at the transmitter of a modem using a convolutional encoder at the transmitter and performing maximum likelihood (Viterbi) decoding at the receiver improves the signal to noise ratio of the modem, assuming that the major impairment is Gaussian noise. As shown in U.S. Pat. No. 4,077,021 to Csajka et al., binary data is converted to multilevel complex valued symbols, with a convolutional encoder being used to precode the multilevel symbols. These multilevel symbols are represented by signal points in a signal constellation formed in the complex plane. A modulator uses the multilevel symbols to generate a modulated carrier wave signal which is transmitted over a channel to a receiver of a modem that makes a maximum likelihood decision.
In the previously mentioned U.S. Pat. No. 4,077,021, the signal points of the constellation are partitioned into multipoint subsets. This method is developed in more detail in an article entitled "Channel Coding with Multilevel/Phase Signals", G. Ungerboeck, IEEE Transactions on Information Theory, January, 1982, pp. 55-66. According to a method of mapping by set partition, the constellation is divided into subsets through a plurality of subdivisions. During each subdivision, the minimum distance between the points of the subset are increased by .sqroot.2. The minimum distance for each level of subdivision is shown by the following equation: ##EQU1## In each subdivision the number of signal points in the subset are halved. For example, starting with an original sixteen-point constellation, in the first subdivision, there are two subsets with eight points each. In the second subdivision, there are four subsets with four points each. In the third subdivision, there are eight subsets with two points each and finally, in the fourth subdivision, there are sixteen subsets with one point each. Each subset at a given level of subdivision is identified by a bit group output Y.sub.n. The desired level of subdivision dictates the number of bits in the bit group Y.sub.n, which is an output provided by the convolutional encoder.
The above-described mapping by set partition technique assumes that the phase of the received carrier signal is known. In telephone line transmission the received signal constellation may be rotated with respect to the transmitted signal constellation, due to phase hits. This rotation may cause the phase of the received signal to jump permanently to a new value. More specifically, if there is a phase hit, the received signal might be rotated by multiples of 90.degree.. If the transmitted signal is characterized by: EQU S(t)=.SIGMA.a.sub.n cos (.omega..sub.c t+.theta.)-.SIGMA.b.sub.n sin (.omega..sub.c t+.theta.) (Equation B)
then the received signal is given by: ##EQU2## where k can take any one of the values given by k=.+-.1, .+-.2, .+-.3, .omega..sub.c is the angular velocity of the carrier wave, and .theta. is the phase angle representing the encoded data. Since the phase lock-loop of the modem cannot recognize a carrier phase shift of more than 90.degree., the receiver will misinterpret the incoming signal. This phase hit problem is illustrated with respect to the signal constellation of FIG. 1 wherein a signal constellation of four points (.+-.1) is shown. If the transmitted point is (1, 1), then for a phase rotation of (.pi./2): EQU S(t)=1.multidot.cos (.omega..sub.c t+.theta.)-1.multidot.sin (.omega..sub.c t+.theta.) (Equation D)
and the received point is: ##EQU3## the received point will be interpreted as (-1, 1), which is incorrect.
It is well-known in coding theory that a code is associated with a generator (equation) matrix and a parity equation (matrix). In the previously mentioned article by G. Ungerboeck, the parity check equation is used to analyze properties of convolutional codes and to derive systematic convolutional encoders. Mapping by set partitioning and the parity check equation are used in the implementation of the present invention, although the parity check equation is used in the present invention in a different manner for different objectives.
Another method of overcoming phase rotation is by differential encoding of the input bits. Ungerboeck has shown that in his method of coding one of the bits can be differentially encoded. In a CCITT submission from AT&T Informational Systems entitled "A Trellis-Coded Modulation Scheme that Includes Differential Encoding for 9600 Bit/sec, Full-Duplex, Two-wire Modem", dated August 1983, there is disclosed a method of compensating for phase rotations by multiples of 90.degree. using differential encoding.